package com.ruoyi.operation.domain.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.util.Date;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 文件组业务对象
 *
 * @author ruoyi
 * @date 2025-07-22
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TFileGroupBo extends BaseEntity {

    /**
     * 主键
     */
    @NotBlank(message = "主键不能为空", groups = { EditGroup.class })
    private String id;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String hostip;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fullpath;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String busisystemid;

    /**
     * 字典，对于业务系统而言，这个文件组是输入inport还是输出export。
     */
    @NotBlank(message = "字典，对于业务系统而言，这个文件组是输入inport还是输出export。不能为空", groups = { AddGroup.class, EditGroup.class })
    private String inorex;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String period;

    /**
     *
     */
    @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8")
    @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date starttime;

    /**
     * 1：根据上工作日对比；2：根据清单表匹配（注意时间一致性）；3：预留其他方式
     */
    @NotBlank(message = "1：根据上工作日对比；2：根据清单表匹配（注意时间一致性）；3：预留其他方式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String testmode;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String memo;

    /**
     * 0：不启用；1:启用；
     */
    @NotBlank(message = "0：不启用；1:启用；不能为空", groups = { AddGroup.class, EditGroup.class })
    private String flag;


}
